// npm install jsonwebtoken 
// 用它实现 token的加密和解密 
const jwt = require('jsonwebtoken');
// 加盐  
function getToken(info,expires){
    return jwt.sign(info,'xiayuhe',{expiresIn:expires})
}


// 解密 
// 注意解密的步骤是异步的 
// 回调函数  
// promise 
// function  parseToken(token){
//     return new Promise(function(resolve,reject){
//         // 执行解密的操作 
//         jwt.verify(token,'xiayuhe666',(err,data)=>{
//             if(err){
//                 reject(err.message) // 解密失败的信息
//             }
//             else{
//                 resolve(data); // 解密以后的数据
//             }
//         })
//     });
// }

function  parseToken(token){
    return new Promise(function(resolve,reject){
        // 执行解密的操作 
        jwt.verify(token,'xiayuhe',(err,data)=>{
            if(err){
                resolve({
                    code:0,
                    message:err.message
                }) // 解密失败的信息
            }
            else{
                resolve({
                    code:1,
                    message:data
                }); // 解密以后的数据
            }
        })
    });
}



module.exports = {
    getToken,
    parseToken
}